package com.zzj.ecology.system.service.system;

import com.zzj.ecology.system.bean.system.SysDept;
import com.zzj.ecology.system.dto.HttpResult;
import com.zzj.ecology.system.domain.Page;
import com.zzj.ecology.system.bean.vo.dtree.DTreeResponse;

import java.util.List;

/**
 * @ClassName SysDeptService
 * @Description TODO
 * @Author zhijun zeng at 23:05 2020/4/9
 * @Version 1.0
 **/
public interface SysDeptService {

    /**
     * 分页 查询部门列表数据
     * @param page
     * @return
     */
    HttpResult findPageList(Page page);

    /**
     * 查询 下拉框 数据,数据格式
     * @return
     */
    DTreeResponse dtree();

    /**
     * 根据 部门名称 查询部门名称是否已经存在. 存在返回true, 不存在返回 false
     * @param deptName
     * @return
     */
    boolean checkExists(String deptName);

    /**
     * 创建一条新的部门记录
     * @param sysDept
     * @return
     */
    HttpResult create(SysDept sysDept);

    /**
     * 根据部门ID 修改部门信息
     * @param sysDept
     * @return
     */
    HttpResult update(SysDept sysDept);

    /**
     * 批量修改 delete_status = '0' 修改成 '1', 记录修改人员并且修改时间
     * @param ids
     * @param username
     * @return
     */
    HttpResult updateDeleteStatusByIds(List<Integer> ids, String username);
}
